#ifndef _CHARACTER_H_
#define _CHARACTER_H_

#include <string>
#include <math.h>
#include <list>
#include <windows.h>
#include "action_system.h"
#include "unique_id.h"

using namespace std;

const float PI_VAL = 3.14159265358979323846264338327950288419716939937510582097494459230781164062862089986280;

class Character{
private:
	float X;
	float Y;
	float Dir;
	string Name;
	int HP;
	
public:
	UniqueID CurID;

	ActionSystem CurActionSystem;

	void MouseMove(float mx, float my, float TimePass);
	
	void Work(float,bool);

	int GetHP();

	bool IsDead();

	void Zero();

	void Attack(Character& chr);

	void BeAttack(int damage);

	float GetX();

	float GetY();

	float Getline(Character& chr);

	float GetDir();

	string GetName();

	void Shift(float mx, float my);

	void ReShift(float mx, float my);

	void SetDate(float x, float y, string name);

	void SetShift(float x, float y);

	float SetX(float);

	float SetY(float);

	string SetName(string);

	void AttackDraw(HDC A);

	virtual void Draw(HDC A);

	void SetDir(float dir);

	void scope(Character& chr);

	void FaceDir(float fx, float fy);

};

#endif